]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
lightbox: Show the actor before easing it
authorMarco Trevisan (Treviño) <mail@3v1n0.net>
Thu, 3 Oct 2019 13:13:21 +0000 (15:13 +0200)
committerMarco Trevisan (Treviño) <mail@3v1n0.net>
Thu, 3 Oct 2019 13:26:13 +0000 (15:26 +0200)
As per clutter optimizations in should_skip_implicit_transition() any
transition will be ignored if applied to an actor with unmapped clones.

Since we initialize the lightbox as hidden, when we use it standalone (as it
happens for the long fade in screenShield) the transition will be ignored.
This causes the lockscreen fade-out after the idle delay not to work, but
instead to have an apparently locked system that is instead not locked at
all.

So, just ensure that the lightbox actor is visible before applying to it any
transition.

Fixes https://gitlab.gnome.org/GNOME/gnome-shell/issues/1683

js/ui/lightbox.js

index 20092cc04994448b506edaf6c916ae8b9b5759c7..ecd6304eae2159fff6e0de1854d0d279bcac7aa3 100644 (file)
@@ -185,6 +185,8 @@ var Lightbox = class Lightbox {
             this.emit('shown');
         };
 
+        this.actor.show();
+
         if (this._radialEffect) {
             this.actor.ease_property(
                 '@effects.radial.brightness', VIGNETTE_BRIGHTNESS, easeProps);
@@ -197,8 +199,6 @@ var Lightbox = class Lightbox {
                 onComplete
             }));
         }
-
-        this.actor.show();
     }
 
     hide(fadeOutTime) {